package com.skyable.account.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.skyable.account.entity.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author GaoYuan
 * @title: Role
 * @projectName spring-cloud-oauth2-demo
 * @description: TODO
 * @date 2021/4/129:03
 */
@Data
@TableName("sys_role")
public class SysRole extends BaseEntity {

    @ApiModelProperty(value = "ID")
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 角色名称
     */
    @ApiModelProperty(value = "角色名称")
    private String roleName;
    /**
     * 角色编码
     */
    @ApiModelProperty(value = "角色编码")
    private String roleCode;
    /**
     * 角色描述
     */
    @ApiModelProperty(value = "角色描述")
    private String description;

    /**
     * 角色状态（0正常 1停用）
     */
    @ApiModelProperty(hidden = true)
    private Integer status;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @ApiModelProperty(hidden = true)
    private Integer delFlag;

    /**
     * 是否是默认角色
     */
    @ApiModelProperty(value = "是否默认角色")
    private Boolean isDefault;

    /**
     * 所属部门ID
     */
    @ApiModelProperty(value = "所属部门ID")
    private Long deptId;

    /**
     * 角色权限ID集合
     */
    @ApiModelProperty(value = "角色权限ID集合")
    @TableField(exist = false)
    private List<Long> permissionIdList;
}
